HAProxy配置文件主要由5个部分组成,但是有些部分并不是必需的,可以根据需要选择相应的部分进行配置:
1.global部分
设定全局参数变量,属于进程级别的配置,通常和操作系统配置有关
2.defaults部分
模式参数的配置部分。在此部分设置的参数值,默认会自动引用到下面的frontend。backend和listen部分中,因此,如果某些参数属于公用的配置,只需要在defaults部分添加一次即可。如果在frontend、backend和listen部分中也配置了于defaults部分一样的参数,那么defaults部分参数对应的值自动覆盖
3.frontend部分
此部分用于设置接收用户请求的前段虚拟节点。frontend是在haproxy1.3版本以后才引入的一个组件,同事引入的还有backend组件。通过引入这些组件,在很大程度上简化了HAProxy配置文件的复杂性。frontend可以根据ACL规则直接指定要是用的后端backend。
4.backend部分
此部分用于设置集群后端服务集群的配置,也就是用来添加一组真是服务器,以处理前端用户的请求。添加的真是服务器类似于LVS中的real server节点
5. listen部分
此部分是frontend部分和backend部分的结合体。在HAProxy 1.3版本之前,HAProxy的所有配置选项都在这个部分上设置。为了保持兼容性,HAProxy新的版本仍然保留了listen组件的配置方式。目前在HAProxy中,两种配置方式任选其一即可。